From 731f63cad6f4c3203ee3a35e1762659d35cd1d1e Mon Sep 17 00:00:00 2001 From: Kenichi Handa Date: Mon, 6 Aug 2007 01:01:20 +0000 Subject: [PATCH] Wrap (require 'help-mode) by eval-when-compile. (quail-help-init): New function. (quail-help): Call quail-help-init. (quail-store-decode-map-key): Change it to a function. --- lisp/international/quail.el | 29 +++++++++++++++++------------ 1 file changed, 17 insertions(+), 12 deletions(-) diff --git a/lisp/international/quail.el b/lisp/international/quail.el index 774e3c14269..98d4cc80ec5 100644 --- a/lisp/international/quail.el +++ b/lisp/international/quail.el @@ -55,7 +55,7 @@ ;;; Code: -(require 'help-mode) +(eval-when-compile (require 'help-mode)) (defgroup quail nil "Quail: multilingual input method." @@ -2431,22 +2431,27 @@ should be made by `quail-build-decode-map' (which see)." (insert ?\n)) (insert ?\n)))) -(define-button-type 'quail-keyboard-layout-button - :supertype 'help-xref - 'help-function '(lambda (layout) - (help-setup-xref `(quail-keyboard-layout-button ,layout) nil) - (quail-show-keyboard-layout layout)) - 'help-echo (purecopy "mouse-2, RET: show keyboard layout")) - -(define-button-type 'quail-keyboard-customize-button - :supertype 'help-customize-variable - 'help-echo (purecopy "mouse-2, RET: customize keyboard layout")) +(defun quail-help-init () + (unless (featurep 'help-mode) + (require 'help-mode) + (define-button-type 'quail-keyboard-layout-button + :supertype 'help-xref + 'help-function '(lambda (layout) + (help-setup-xref `(quail-keyboard-layout-button ,layout) + nil) + (quail-show-keyboard-layout layout)) + 'help-echo (purecopy "mouse-2, RET: show keyboard layout")) + + (define-button-type 'quail-keyboard-customize-button + :supertype 'help-customize-variable + 'help-echo (purecopy "mouse-2, RET: customize keyboard layout")))) (defun quail-help (&optional package) "Show brief description of the current Quail package. Optional arg PACKAGE specifies the name of alternative Quail package to describe." (interactive) + (quail-help-init) (let ((help-xref-mule-regexp help-xref-mule-regexp-template) (default-enable-multibyte-characters enable-multibyte-characters) (package-def @@ -2629,7 +2634,7 @@ KEY BINDINGS FOR CONVERSION ;; it is not yet stored. As a result, the element is a string or a ;; list of strings. -(defsubst quail-store-decode-map-key (table char key) +(defun quail-store-decode-map-key (table char key) (let ((elt (aref table char))) (if elt (if (consp elt) -- 2.30.2